"use strict";
const nodemailer = require("nodemailer"); // 引入模块

const user = {
    user: '1452977493@qq.com', // 用户
    pass: 'yyvbouhstolrjaee', // 密码
};


// create reusable transporter object using the default SMTP transport
// 使用SMTP传输协议  创建一个  可复用的传输对象 
let transporter = nodemailer.createTransport({
    host: "smtp.qq.com", // 主机名
    port: 465, // 端口号
    secure: true, // true for 465, false for other ports
    auth: user
});

// send mail with defined transport object
// 使用 定义的传输对象 发送邮件
function  sendMail(email) {    
    let  code  =  getCode();

        
    transporter.sendMail({        
        from: '"j" <1452977493@qq.com>',
          // 发送地址
        to:  email,
          // 接收地址
        subject:   "[j] 验证码",
          // 主题
        html:   `<b>您的验证码是:${code}</b>`,
          // html信息
            
    });

        
    return  code;
}


function  random(min,  max)  {    
    return  Math.ceil(Math.random()  *  (max  -  min  +  1)  +  min  -  1);
}


function  getCode()  {    
    var  code  =  '';    
    var  type;    
    for  (var  i  =  0;  i  <  6;  i++)  {        
        type  =  random(1,  3);        
        switch  (type)  {            
            case  1:
                                code  +=  String.fromCharCode(random(48,  57));                
                break;            
            case  2:
                                code  +=  String.fromCharCode(random(65,  90));                
                break;            
            case  3:
                                code  +=  String.fromCharCode(random(97,  122));                
                break;        
        }    
    }    
    return  code;
}


module.exports  =  sendMail;